Форум dkLab и Denwer
Здесь общаются Web-разработчики.
Генеральный спонсор:
Хостинг «Джино»

xAjax и GD - как избавиться от перезагрузки страницы? (peterpro)
Author Message
peterpro
Заглянувший



Joined: 21 Mar 2006
Posts: 14
Карма: 0
   поощрить/наказать


PostPosted: Sun Apr 16, 2006 12:53 am (написано за 6 минут 48 секунд)
   Post subject: xAjax и GD - как избавиться от перезагрузки страницы?
Reply with quote

Разрабатывается карта для онлайн-игрушки. Задача - отловить координаты X и Y по клику пользователя на карте, проанализировать данные и перерисовать карту, нарисовав окружность некого радиуса с центром в точке X и Y.

Сейчас я задачу решаю так: по клику на карте ловлю JavaScript`ом координаты, передаю их в некую функцию xajax_Circle((x,y), которая переисовывает карту с использованием отдельного файла-движка, генерирующего карту через GD.

Проблема такая: после каждого клика происходит "видимое" обновление, т.е. появляется progress bar, в котором видно, как подгружается этот файл-движок.

Два вопроса:
1) Можно ли избавиться от этой надоедливой перезагрузки? (Я, к сожалению, знаю только один метод подгружения картинки через GD - через создание отдельного "движка" с Header("Content-type: image/gif"); который потом подгружается через <img src>.

2) Возможно ли методами JavaScript отрисовывать незакрашенные окружности произвольного диаметра и цвета?
Back to top
View user's profile Send private message
WingedFox
Профессионал



Joined: 29 Apr 2003
Posts: 4064
Карма: 268
   поощрить/наказать

Location: Питер

PostPosted: Sun Apr 16, 2006 1:13 am (спустя 20 минут; написано за 59 секунд)
   Post subject:
Reply with quote

peterpro
1. нет
2. да, но
 а) canvas поддерживается нормально только в FF
 б) библиотеки для отрисовки геометрии DIV'ами дико тормозят работу.
Back to top
View user's profile Send private message
peterpro
Заглянувший



Joined: 21 Mar 2006
Posts: 14
Карма: 0
   поощрить/наказать


PostPosted: Sun Apr 16, 2006 1:18 am (спустя 5 минут; написано за 1 минуту 10 секунд)
   Post subject:
Reply with quote

WingedFox
WingedFox wrote:
б) библиотеки для отрисовки геометрии DIV'ами дико тормозят работу.
Но, насколько я понимаю - тормозят они всего лишь комп клиента? (JS, как-никак:)

Для всех интересующихся данной проблемой - я нашел замечательный сайт с библиотекой для JS, позволяющей рисовать примитивы.
www.walterzorn.com/jsgraphics/jsgraphics_e.htm
Back to top
View user's profile Send private message
WingedFox
Профессионал



Joined: 29 Apr 2003
Posts: 4064
Карма: 268
   поощрить/наказать

Location: Питер

PostPosted: Sun Apr 16, 2006 1:22 am (спустя 3 минуты; написано за 2 минуты 16 секунд)
   Post subject:
Reply with quote

peterpro
Я именно про него и говорил.
Не хотел давать прямую ссылку....

Клиент тормозит так, что FF конкретно подвисает.
Опера иногда падает.
IE ведёт себя более-менее прилично... но тоже - не сильно хорошо.

В общем, пользуйтесь подгрузкой картинок, либо переходите на флеш.
Back to top
View user's profile Send private message
peterpro
Заглянувший



Joined: 21 Mar 2006
Posts: 14
Карма: 0
   поощрить/наказать


PostPosted: Sun Apr 16, 2006 1:50 am (спустя 27 минут; написано за 9 секунд)
   Post subject:
Reply with quote

WingedFox
Знаете, я бы с Вами согласился, если бы не одно НО...

GD отжирает очень много памяти, а если представить, что в игрушке онлайн будет хотя бы под 500 человек - очень много ресурсов будет потрачено впустую.

И я не думаю, что один примитив - круг сильно затормозит:)

Спасибо огромное за качественные советы.
Back to top
View user's profile Send private message
WingedFox
Профессионал



Joined: 29 Apr 2003
Posts: 4064
Карма: 268
   поощрить/наказать

Location: Питер

PostPosted: Sun Apr 16, 2006 1:56 am (спустя 6 минут; написано за 2 минуты 24 секунды)
   Post subject:
Reply with quote

Ну... Как сказать.
У меня FF умирал примерно на 300 "пикселях". Я разрабатывал похожую систему, потом перенесли всё на жабу, ибо грустно было так работать.

Если уж так нужны кружки - сделайте 100 штук .png фиксированных размеров с прозрачным фоном.
Проще и эффективнее.
Back to top
View user's profile Send private message
Display posts from previous:   
Post new topic   Reply to topic All times are GMT + 3 Hours
Page 1 of 1    Email to a Friend.
You cannot post new topics in this forum. You cannot reply to topics in this forum. You cannot edit your posts in this forum. You cannot delete your posts in this forum. You cannot vote in polls in this forum. You cannot attach files in this forum. You can download files in this forum.
XML